From 8e37e2b661d009f668f7803febeffdf973e7f23a Mon Sep 17 00:00:00 2001 From: Ewan Mellor Date: Tue, 28 Nov 2006 11:35:10 +0000 Subject: [PATCH] Don't bail if the VM renaming at the end of saving doesn't succeed -- we expect a failure if this is a localhost migration. Signed-off-by: Ewan Mellor --- tools/python/xen/xend/XendCheckpoint.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tools/python/xen/xend/XendCheckpoint.py b/tools/python/xen/xend/XendCheckpoint.py index 699a179fe5..3d5bdc9732 100644 --- a/tools/python/xen/xend/XendCheckpoint.py +++ b/tools/python/xen/xend/XendCheckpoint.py @@ -37,6 +37,7 @@ def write_exact(fd, buf, errmsg): if os.write(fd, buf) != len(buf): raise XendError(errmsg) + def read_exact(fd, size, errmsg): buf = '' while size != 0: @@ -50,7 +51,6 @@ def read_exact(fd, size, errmsg): return buf - def save(fd, dominfo, network, live, dst): write_exact(fd, SIGNATURE, "could not write guest state file: signature") @@ -97,7 +97,14 @@ def save(fd, dominfo, network, live, dst): forkHelper(cmd, fd, saveInputHandler, False) dominfo.destroyDomain() - dominfo.setName(domain_name) + try: + dominfo.setName(domain_name) + except VmError: + # Ignore this. The name conflict (hopefully) arises because we + # are doing localhost migration; if we are doing a suspend of a + # persistent VM, we need the rename, and don't expect the + # conflict. This needs more thought. + pass except Exception, exn: log.exception("Save failed on domain %s (%s).", domain_name, -- 2.30.2